package ge.basicActors;

import ge.engine.Positionable;
import ge.modules.Module;

/**
 * 
 * @author abel.botrdonado
 *
 * A lot of different elements can represent the graphical part of a button (3 kinds of text, a square, a
 * sprite, etc). The only thing you need to use them in a button is implements that interface.
 *  The idea is that the object who represents a button could change their properties in that three differnts
 *  moments.
 */
public interface DrawableButton extends Module, Positionable
{
	/**
	 * This function will be called when the mouse is not over the button.
	 */
	public void buttonidle();
	/**
	 * This function will be called when the mouse is over the button.
	 */
	public void mouseOver();
	/**
	 * This function will be called when te mouse clicks the button.
	 */
	public void mouseClick();
}
